package com.fdb.efp.esb.service.bo.req;

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.annotation.JSONPOJOBuilder;
import com.alibaba.fastjson.annotation.JSONType;

/**
 * @author hengyh
 */
@JSONType(builder = ZXCXA01QueryReports.Builder.class)
public class ZXCXA01QueryReports implements ZXQueryReports {
	private static final long serialVersionUID = 8875778103703743150L;

	private String QryAppTp;
	private String RprtUsr;
	private String RprtUsrBlngDept;
	private String CustNm;
	private String IdentTp;
	private String IdentNo;
	private String QryRsn;
	private String QryTp;
	private String QryVer;
	private String AcqrngCustSrc;
	private String PdNm;
	private String LnkContrNo;
	private String AuthMd;
	private String BioIdentTechTp;
	private String CrdtRprtQryMd;
	private String CrdtRprtRetRsltSeg;
	private String AuthIndr;
	private String LisVldty;
	private String LisAddr;
	private String AuthTm;
	private String AuthStrtDt;
	private String AuthStopDt;
	private String LisSrcURL;
	private String AuthArchvsSrcURL;
	private String LisFileNm;
	private String AuthArchvsFileNm;
	private String QryAppAprvlUsr;
	private String QryAppAprvlUsrBlngBrch;
	private String AprvlOpnn;



	private ZXCXA01QueryReports() {
	}

	@JSONField(name = "QryAppTp")
	public String getQryAppTp() {
		return QryAppTp;
	}

	@JSONField(name = "RprtUsr")
	public String getRprtUsr() {
		return RprtUsr;
	}

	@JSONField(name = "RprtUsrBlngDept")
	public String getRprtUsrBlngDept() {
		return RprtUsrBlngDept;
	}

	@JSONField(name = "CustNm")
	public String getCustNm() {
		return CustNm;
	}

	@JSONField(name = "IdentTp")
	public String getIdentTp() {
		return IdentTp;
	}

	@JSONField(name = "IdentNo")
	public String getIdentNo() {
		return IdentNo;
	}

	@JSONField(name = "QryRsn")
	public String getQryRsn() {
		return QryRsn;
	}

	@JSONField(name = "QryTp")
	public String getQryTp() {
		return QryTp;
	}

	@JSONField(name = "QryVer")
	public String getQryVer() {
		return QryVer;
	}

	@JSONField(name = "AcqrngCustSrc")
	public String getAcqrngCustSrc() {
		return AcqrngCustSrc;
	}

	@JSONField(name = "PdNm")
	public String getPdNm() {
		return PdNm;
	}

	@JSONField(name = "LnkContrNo")
	public String getLnkContrNo() {
		return LnkContrNo;
	}

	@JSONField(name = "AuthMd")
	public String getAuthMd() {
		return AuthMd;
	}

	@JSONField(name = "BioIdentTechTp")
	public String getBioIdentTechTp() {
		return BioIdentTechTp;
	}

	@JSONField(name = "CrdtRprtQryMd")
	public String getCrdtRprtQryMd() {
		return CrdtRprtQryMd;
	}

	@JSONField(name = "CrdtRprtRetRsltSeg")
	public String getCrdtRprtRetRsltSeg() {
		return CrdtRprtRetRsltSeg;
	}

	@JSONField(name = "AuthIndr")
	public String getAuthIndr() {
		return AuthIndr;
	}

	@JSONField(name = "LisVldty")
	public String getLisVldty() {
		return LisVldty;
	}

	@JSONField(name = "LisAddr")
	public String getLisAddr() {
		return LisAddr;
	}

	@JSONField(name = "AuthTm")
	public String getAuthTm() {
		return AuthTm;
	}

	@JSONField(name = "AuthStrtDt")
	public String getAuthStrtDt() {
		return AuthStrtDt;
	}

	@JSONField(name = "AuthStopDt")
	public String getAuthStopDt() {
		return AuthStopDt;
	}

	@JSONField(name = "LisSrcURL")
	public String getLisSrcURL() {
		return LisSrcURL;
	}

	@JSONField(name = "AuthArchvsSrcURL")
	public String getAuthArchvsSrcURL() {
		return AuthArchvsSrcURL;
	}

	@JSONField(name = "LisFileNm")
	public String getLisFileNm() {
		return LisFileNm;
	}

	@JSONField(name = "AuthArchvsFileNm")
	public String getAuthArchvsFileNm() {
		return AuthArchvsFileNm;
	}

	@JSONField(name = "QryAppAprvlUsr")
	public String getQryAppAprvlUsr() {
		return QryAppAprvlUsr;
	}

	@JSONField(name = "QryAppAprvlUsrBlngBrch")
	public String getQryAppAprvlUsrBlngBrch() {
		return QryAppAprvlUsrBlngBrch;
	}

	@JSONField(name = "AprvlOpnn")
	public String getAprvlOpnn() {
		return AprvlOpnn;
	}


	@Override
	public String toString() {
		return "ZXCXA01QueryReports [queryType=" + QryTp + ", name=" + CustNm + ", certNo=" + IdentNo + ", queryReason=" + QryRsn + "]";
	}


	@JSONPOJOBuilder(buildMethod = "build", withPrefix = "with")
	public static class Builder {
		private ZXCXA01QueryReports buildWith;

		public Builder setBuildWith(ZXCXA01QueryReports buildWith) {
			this.buildWith = buildWith;
			return this;
		}

		public Builder withQryAppTp(String val) {
			buildWith.QryAppTp = val;
			return this;
		}

		public Builder withRprtUsr(String val) {
			buildWith.RprtUsr = val;
			return this;
		}

		public Builder withRprtUsrBlngDept(String val) {
			buildWith.RprtUsrBlngDept = val;
			return this;
		}

		public Builder withCustNm(String val) {
			buildWith.CustNm = val;
			return this;
		}

		public Builder withIdentTp(String val) {
			buildWith.IdentTp = val;
			return this;
		}

		public Builder withIdentNo(String val) {
			buildWith.IdentNo = val;
			return this;
		}

		public Builder withQryRsn(String val) {
			buildWith.QryRsn = val;
			return this;
		}

		public Builder withQryTp(String val) {
			buildWith.QryTp = val;
			return this;
		}

		public Builder withQryVer(String val) {
			buildWith.QryVer = val;
			return this;
		}

		public Builder withAcqrngCustSrc(String val) {
			buildWith.AcqrngCustSrc = val;
			return this;
		}

		public Builder withPdNm(String val) {
			buildWith.PdNm = val;
			return this;
		}

		public Builder withLnkContrNo(String val) {
			buildWith.LnkContrNo = val;
			return this;
		}

		public Builder withAuthMd(String val) {
			buildWith.AuthMd = val;
			return this;
		}

		public Builder withBioIdentTechTp(String val) {
			buildWith.BioIdentTechTp = val;
			return this;
		}

		public Builder withCrdtRprtQryMd(String val) {
			buildWith.CrdtRprtQryMd = val;
			return this;
		}

		public Builder withCrdtRprtRetRsltSeg(String val) {
			buildWith.CrdtRprtRetRsltSeg = val;
			return this;
		}

		public Builder withAuthIndr(String val) {
			buildWith.AuthIndr = val;
			return this;
		}

		public Builder withLisVldty(String val) {
			buildWith.LisVldty = val;
			return this;
		}

		public Builder withLisAddr(String val) {
			buildWith.LisAddr = val;
			return this;
		}

		public Builder withAuthTm(String val) {
			buildWith.AuthTm = val;
			return this;
		}

		public Builder withAuthStrtDt(String val) {
			buildWith.AuthStrtDt = val;
			return this;
		}

		public Builder withAuthStopDt(String val) {
			buildWith.AuthStopDt = val;
			return this;
		}

		public Builder withLisSrcURL(String val) {
			buildWith.LisSrcURL = val;
			return this;
		}

		public Builder withAuthArchvsSrcURL(String val) {
			buildWith.AuthArchvsSrcURL = val;
			return this;
		}

		public Builder withLisFileNm(String val) {
			buildWith.LisFileNm = val;
			return this;
		}

		public Builder withAuthArchvsFileNm(String val) {
			buildWith.AuthArchvsFileNm = val;
			return this;
		}

		public Builder withQryAppAprvlUsr(String val) {
			buildWith.QryAppAprvlUsr = val;
			return this;
		}

		public Builder withQryAppAprvlUsrBlngBrch(String val) {
			buildWith.QryAppAprvlUsrBlngBrch = val;
			return this;
		}

		public Builder withAprvlOpnn(String val) {
			buildWith.AprvlOpnn = val;
			return this;
		}

		public Builder buildWithExists(ZXCXA01QueryReports exists)
		{ buildWith = exists; return this; }
		public ZXCXA01QueryReports build()
		{ return buildWith; }
		public Builder()
		{ buildWith = new ZXCXA01QueryReports(); }
	}

}
